home *** CD-ROM | disk | FTP | other *** search
/ Developer CD Series 2000 October: Mac OS SDK / Dev.CD Oct 00 SDK1.toast / Development Kits / Cross Platform / QuickTime 4.1.2 Windows SDK / CIncludes / QD3DAcceleration.h < prev    next >
Encoding:
C/C++ Source or Header  |  2000-04-12  |  3.0 KB  |  136 lines  |  [TEXT/R*ch]

  1. /*
  2.      File:        QD3DAcceleration.h
  3.  
  4.      Contains:    Header file for low-level 3D driver API                            
  5.  
  6.      Version:    Technology:    Quickdraw 3D 1.6
  7.                  Release:    QuickTime 4.1
  8.  
  9.      Copyright:    (c) 1995-1999 by Apple Computer, Inc., all rights reserved.
  10.  
  11.      Bugs?:        For bug reports, consult the following page on
  12.                  the World Wide Web:
  13.  
  14.                      http://developer.apple.com/bugreporter/
  15.  
  16. */
  17. #ifndef __QD3DACCELERATION__
  18. #define __QD3DACCELERATION__
  19.  
  20. #ifndef __QD3D__
  21.     #include <QD3D.h>
  22. #endif
  23.  
  24.  
  25.  
  26.  
  27. #if PRAGMA_ONCE
  28. #pragma once
  29. #endif
  30.  
  31. #ifdef __cplusplus
  32. extern "C" {
  33. #endif
  34.  
  35. #if PRAGMA_IMPORT
  36. #pragma import on
  37. #endif
  38.  
  39. #if PRAGMA_STRUCT_ALIGN
  40.     #pragma options align=power
  41. #elif PRAGMA_STRUCT_PACKPUSH
  42.     #pragma pack(push, 2)
  43. #elif PRAGMA_STRUCT_PACK
  44.     #pragma pack(2)
  45. #endif
  46.  
  47. #if PRAGMA_ENUM_ALWAYSINT
  48.     #pragma enumsalwaysint on
  49. #elif PRAGMA_ENUM_OPTIONS
  50.     #pragma option enum=int
  51. #elif PRAGMA_ENUM_PACK
  52.     #if __option(pack_enums)
  53.         #define PRAGMA_ENUM_PACK__QD3DACCELERATION__
  54.     #endif
  55.     #pragma options(!pack_enums)
  56. #endif
  57.  
  58. /******************************************************************************
  59.  **                                                                             **
  60.  **                         Vendor ID definitions                             **
  61.  **                                                                             **
  62.  *****************************************************************************/
  63. /*
  64.  * If kQAVendor_BestChoice is used, the system chooses the "best" drawing engine
  65.  * available for the target device. This should be used for the default.
  66.  */
  67. enum {
  68.     kQAVendor_BestChoice        = -1
  69. };
  70.  
  71. /*
  72.  * The other definitions (kQAVendor_Apple, etc.) identify specific vendors
  73.  * of drawing engines. When a vendor ID is used in conjunction with a
  74.  * vendor-defined engine ID, a specific drawing engine can be selected.
  75.  */
  76. enum {
  77.     kQAVendor_Apple                = 0,
  78.     kQAVendor_ATI                = 1,
  79.     kQAVendor_Radius            = 2,
  80.     kQAVendor_DesignMark        = 3,
  81.     kQAVendor_Matrox            = 4,
  82.     kQAVendor_Yarc                = 5,
  83.     kQAVendor_DiamondMM            = 6,
  84.     kQAVendor_3DLabs            = 7,
  85.     kQAVendor_D3DAdaptor        = 8,
  86.     kQAVendor_IXMicro            = 9,
  87.     kQAVendor_NumberNine        = 10,
  88.     kQAVendor_MicroConversions    = 11,
  89.     kQAVendor_PurpleShark        = 12,
  90.     kQAVendor_VillageTronic        = 14
  91. };
  92.  
  93. /******************************************************************************
  94.  **                                                                             **
  95.  **                         Apple's engine ID definitions                         **
  96.  **                                                                             **
  97.  *****************************************************************************/
  98. enum {
  99.     kQAEngine_AppleSW            = 0,                            /* Default software rasterizer*/
  100.     kQAEngine_AppleHW            = -1,                            /* Apple accelerator*/
  101.     kQAEngine_AppleHW2            = 1,                            /* Another Apple accelerator*/
  102.     kQAEngine_AppleHW3            = 2                                /* Another Apple accelerator*/
  103. };
  104.  
  105.  
  106.  
  107.  
  108. #if PRAGMA_ENUM_ALWAYSINT
  109.     #pragma enumsalwaysint reset
  110. #elif PRAGMA_ENUM_OPTIONS
  111.     #pragma option enum=reset
  112. #elif defined(PRAGMA_ENUM_PACK__QD3DACCELERATION__)
  113.     #pragma options(pack_enums)
  114. #endif
  115.  
  116. #if PRAGMA_STRUCT_ALIGN
  117.     #pragma options align=reset
  118. #elif PRAGMA_STRUCT_PACKPUSH
  119.     #pragma pack(pop)
  120. #elif PRAGMA_STRUCT_PACK
  121.     #pragma pack()
  122. #endif
  123.  
  124. #ifdef PRAGMA_IMPORT_OFF
  125. #pragma import off
  126. #elif PRAGMA_IMPORT
  127. #pragma import reset
  128. #endif
  129.  
  130. #ifdef __cplusplus
  131. }
  132. #endif
  133.  
  134. #endif /* __QD3DACCELERATION__ */
  135.  
  136.